Time-of-flight sensors, as generally understood in the art, are used to determine a distance of an object or plurality of objects from the sensor. Time-of-flight sensors operate by detecting light reflected off of a surface of the object where the light is emitted from an illuminator that is generally co-located with the sensor. Using the time-of-flight sensor, a processing device can determine the round-trip travel time of light emitted from the light source and reflected off of the object back to the sensor. With this information, and with the knowledge of the speed of light (constant c), the processing device can determine the distance of the object.
Typically, eight data points per pixel are used to calculate distances, though more or less may be used. Usually, two data points (X and Y) are acquired per pixel per frame with four frames captured sequentially. Under normal circumstances, a processor cannot perform the calculations on the acquired data until all data has been captured. Thus, a need exists to store the data until such a time as all data points have been captured.
Systems employing time-of-flight sensors will store the captured data points in binary form in a digital memory, such as SRAM, DRAM, or other common memory formats, until such time as all data points are captured and the distance calculation can be completed. However, digital storage of all the data points can increase the cost of devices utilizing time-of-flight sensors, increase processing power, increase processing or information transportation time, increase space requirements, or may otherwise be impracticable. For example, with embedded systems in particular, the memory required might be too large to supply on chip. Also, such memory requirements may increase the cost of an end device by requiring a separate memory chip and interface to store the data points until processing time. Accordingly, it is desirable to provide an efficient and low cost solution to store the data points.